<?php
class dao_servicio
{
	//-----------------------------------------------------------------------------------
	//---- Servicio ---------------------------------------------------------------------
	//-----------------------------------------------------------------------------------
	
	function get_listado_servicios($where=null)
	{
		$sql='';
		if(isset($where)){
			$sql="	SELECT servicio.cod_servicio,servicio.nombre as servicio_nombre,
					servicio.descripcion,loc_origen.cod_localidad as cod_localidad_origen,loc_origen.nombre as localidad_origen,ag_origen.nombre as agencia_origen,
					loc_destino.cod_localidad  as cod_localidad_destino,loc_destino.nombre as localidad_destino,ag_destino.nombre as agencia_destino,horario.hora_salida,horario.hora_llegada,
					servicio.km as km_total,servicio.duracion_viaje as duracion_viaje_total,tipo_servicio.tipo,tipo_servicio.descripcion,
					coche.nro_coche,personal.nro_personal,
					
					CASE tipo_documento.cod_tipo_documento
					When '5' THEN ('CUIT_CUIL: ' || personal.cuit_cuil)
					Else (tipo_documento.abreviatura || ': ' || nro_documento) END as documento,
					
					personal.apellido || ', ' || personal.nombre as personal,horario.cod_horario,horario.dia,agencia_intermedia.agencia_intermedia as cod_localidad_intermedia,
					agencia_intermedia.hora_salida as intermedia_hora_salida,agencia_intermedia.hora_llegada as intermedia_hora_llegada,
					agencia_intermedia.km,agencia_intermedia.duracion_viaje,ag_intermedia.nombre as localidad_intermedia,
					loc_intermedia.nombre as destino_intermedia,horario.descripcion as horario_descripcion
					FROM servicio 
					INNER JOIN tipo_servicio on tipo_servicio.cod_tipo_servicio = servicio.cod_tipo_servicio
					INNER JOIN horario on horario.cod_servicio = servicio.cod_servicio
					INNER JOIN coche on coche.cod_coche = horario.cod_coche
					INNER JOIN servicio_personal on (servicio_personal.cod_servicio,servicio_personal.cod_horario) =
					(horario.cod_servicio,horario.cod_horario)
					INNER JOIN personal on personal.nro_personal = servicio_personal.nro_personal
					INNER JOIN agencia_intermedia on (agencia_intermedia.cod_horario,agencia_intermedia.cod_servicio) =
					(horario.cod_horario,horario.cod_servicio)
					
					INNER JOIN tipo_documento on tipo_documento.cod_tipo_documento = personal.cod_tipo_documento
					INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
					INNER JOIN agencia as ag_destino on ag_destino.nro_agencia = servicio.agencia_destino
					INNER JOIN agencia as ag_intermedia on ag_intermedia.nro_agencia = agencia_intermedia.agencia_intermedia
					INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
					INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
					INNER JOIN localidad as loc_intermedia on loc_intermedia.cod_localidad = ag_intermedia.cod_localidad
					WHERE $where ORDER BY horario.hora_salida asc";
		}
		else{
			$sql = "SELECT servicio.cod_servicio,servicio.nombre as servicio_nombre,
					servicio.descripcion,loc_origen.cod_localidad as cod_localidad_origen,loc_origen.nombre as localidad_origen,ag_origen.nombre as agencia_origen,
					loc_destino.cod_localidad  as cod_localidad_destino,loc_destino.nombre as localidad_destino,ag_destino.nombre as agencia_destino,horario.hora_salida,horario.hora_llegada,
					servicio.km as km_total,servicio.duracion_viaje as duracion_viaje_total,tipo_servicio.tipo,tipo_servicio.descripcion,
					coche.nro_coche,personal.nro_personal,
					
					CASE tipo_documento.cod_tipo_documento
					When '5' THEN ('CUIT_CUIL: ' || personal.cuit_cuil)
					Else (tipo_documento.abreviatura || ': ' || nro_documento) END as documento,
					
					personal.apellido || ', ' || personal.nombre as personal,horario.cod_horario,horario.dia,agencia_intermedia.agencia_intermedia as cod_localidad_intermedia,
					agencia_intermedia.hora_salida as intermedia_hora_salida,agencia_intermedia.hora_llegada as intermedia_hora_llegada,
					agencia_intermedia.km,agencia_intermedia.duracion_viaje,ag_intermedia.nombre as localidad_intermedia,
					loc_intermedia.nombre as destino_intermedia,horario.descripcion as horario_descripcion
					FROM servicio 
					INNER JOIN tipo_servicio on tipo_servicio.cod_tipo_servicio = servicio.cod_tipo_servicio
					INNER JOIN horario on horario.cod_servicio = servicio.cod_servicio
					INNER JOIN coche on coche.cod_coche = horario.cod_coche
					INNER JOIN servicio_personal on (servicio_personal.cod_servicio,servicio_personal.cod_horario) =
					(horario.cod_servicio,horario.cod_horario)
					INNER JOIN personal on personal.nro_personal = servicio_personal.nro_personal
					INNER JOIN agencia_intermedia on (agencia_intermedia.cod_horario,agencia_intermedia.cod_servicio) =
					(horario.cod_horario,horario.cod_servicio)
					
					INNER JOIN tipo_documento on tipo_documento.cod_tipo_documento = personal.cod_tipo_documento
					INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
					INNER JOIN agencia as ag_destino on ag_destino.nro_agencia = servicio.agencia_destino
					INNER JOIN agencia as ag_intermedia on ag_intermedia.nro_agencia = agencia_intermedia.agencia_intermedia
					INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
					INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
					INNER JOIN localidad as loc_intermedia on loc_intermedia.cod_localidad = ag_intermedia.cod_localidad
					ORDER BY horario.hora_salida asc";
		}
		return consultar_fuente($sql);
		$rs=consultar_fuente($sql);
		if (! empty($rs)) {
			return $rs[0]['servicio.cod_servicio'];
		}
		return $rs; 
	}
	
	function get_servicio($cod_servicio)
	{
		$sql='';
			$sql="	SELECT horario.cod_servicio as cod_servicio,horario.cod_horario as cod_horario,servicio.nombre as servicio_nombre,
					servicio.descripcion,loc_origen.nombre as origen,loc_destino.nombre as destino,horario.hora_salida,horario.hora_llegada,
					servicio.km as km_total,servicio.duracion_viaje as duracion_viaje_total,tipo_servicio.tipo,tipo_servicio.descripcion,
					coche.nro_coche,personal.nro_personal,tipo_documento.abreviatura || ': ' || nro_documento as documento,
					personal.apellido || ', ' || personal.nombre as personal,horario.cod_horario,horario.dia,agencia_intermedia.agencia_intermedia as cod_localidad_intermedia,
					agencia_intermedia.hora_salida as intermedia_hora_salida,agencia_intermedia.hora_llegada as intermedia_hora_llegada,
					agencia_intermedia.km,agencia_intermedia.duracion_viaje,ag_intermedia.nombre as localidad_intermedia,
					loc_intermedia.nombre as destino_intermedia
					FROM servicio 
					INNER JOIN tipo_servicio on tipo_servicio.cod_tipo_servicio = servicio.cod_tipo_servicio
					INNER JOIN servicio_personal on (servicio_personal.cod_servicio,servicio_personal.cod_horario) =
					(horario.cod_servicio,horario.cod_horario)
					INNER JOIN personal on personal.nro_personal = servicio_personal.nro_personal
					INNER JOIN horario on horario.cod_servicio = servicio.cod_servicio
					INNER JOIN coche on coche.cod_coche = horario.cod_coche
					INNER JOIN agencia_intermedia on agencia_intermedia.cod_horario = horario.cod_horario
					INNER JOIN tipo_documento on tipo_documento.cod_tipo_documento = personal.cod_tipo_documento
					INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
					INNER JOIN agencia as ag_destino on ag_destino.nro_agencia = servicio.agencia_destino
					INNER JOIN agencia as ag_intermedia on ag_intermedia.nro_agencia = agencia_intermedia.agencia_intermedia
					INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
					INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
					INNER JOIN localidad as loc_intermedia on loc_intermedia.cod_localidad = ag_intermedia.cod_localidad
					WHERE horario.cod_servicio  = '$cod_servicio'  ORDER BY horario.hora_salida asc";
					
		$rs=consultar_fuente($sql);
		if (! empty($rs)) {
			return $rs;
		}
		return $rs; 			
	}
	
	function get_nombre_servicio($cod_servicio)
	{
		$sql='';
			$sql="	SELECT servicio.cod_servicio,servicio.nombre as servicio_nombre,
					servicio.descripcion,loc_origen.nombre as origen,loc_destino.nombre as destino,
					servicio.km as km_total,servicio.duracion_viaje as duracion_viaje_total,tipo_servicio.tipo,tipo_servicio.descripcion,
					coche.nro_coche,personal.nro_personal,tipo_documento.abreviatura || ': ' || nro_documento as documento,
					personal.apellido || ', ' || personal.nombre as personal
					
					
					FROM servicio 
					INNER JOIN tipo_servicio on tipo_servicio.cod_tipo_servicio = servicio.cod_tipo_servicio
					INNER JOIN horario on horario.cod_servicio = servicio.cod_servicio
					INNER JOIN coche on coche.cod_coche = horario.cod_coche
					INNER JOIN servicio_personal on (servicio_personal.cod_servicio,servicio_personal.cod_horario) =
					(horario.cod_servicio,horario.cod_horario)
					INNER JOIN personal on personal.nro_personal = servicio_personal.nro_personal
					INNER JOIN tipo_documento on tipo_documento.cod_tipo_documento = personal.cod_tipo_documento
					INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
					INNER JOIN agencia as ag_destino on ag_destino.nro_agencia = servicio.agencia_destino
				
					INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
					INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
					
					WHERE servicio.cod_servicio = '$cod_servicio'";
					
		$rs=consultar_fuente($sql);
		if (! empty($rs)) {
			return $rs[0]['servicio_nombre'];
		}
		return $rs; 			
	}
	
	function get_servicio_nombre($cod_servicio)
	{
		$sql='';
			$sql="	SELECT servicio.cod_servicio,servicio.nombre as servicio_nombre,
					servicio.descripcion,loc_origen.nombre as origen,loc_destino.nombre as destino,
					ag_origen.nro_agencia as nro_agencia_origen,
					ag_origen.nombre as nombre_agencia_origen,loc_origen.cod_localidad as cod_localidad_origen,
					(loc_origen.nombre ||','|| prov_origen.nombre||','|| pais_origen.nombre) as localidad_origen, 
					ag_destino.nro_agencia as nro_agencia_destino,ag_destino.nombre as nombre_agencia_destino,
					loc_destino.cod_localidad as cod_localidad_destino,
					(loc_destino.nombre ||','|| prov_destino.nombre ||','|| pais_destino.nombre) as localidad_destino,
					horario.hora_salida,horario.hora_llegada,tipo_servicio.tipo,tipo_servicio.descripcion,
					coche.nro_coche,personal.nro_personal,tipo_documento.abreviatura || ': ' || nro_documento as documento,
					personal.apellido || ', ' || personal.nombre as personal
					FROM servicio 			
					INNER JOIN horario on horario.cod_servicio = servicio.cod_servicio
					INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
					INNER JOIN agencia as ag_destino on ag_destino.nro_agencia = servicio.agencia_destino
					INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
					INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
					INNER JOIN provincia as prov_origen on prov_origen.cod_provincia = loc_origen.cod_provincia
					INNER JOIN provincia as prov_destino on prov_destino.cod_provincia = loc_destino.cod_provincia 
					INNER JOIN pais as pais_origen on pais_origen.cod_pais = prov_origen.cod_pais
					INNER JOIN pais as pais_destino on pais_destino.cod_pais = prov_destino.cod_pais
					INNER JOIN tipo_servicio on tipo_servicio.cod_tipo_servicio = servicio.cod_tipo_servicio
					INNER JOIN coche on coche.cod_coche = horario.cod_coche
					INNER JOIN servicio_personal on (servicio_personal.cod_servicio,servicio_personal.cod_horario) =
					(horario.cod_servicio,horario.cod_horario)
					INNER JOIN personal on personal.nro_personal = servicio_personal.nro_personal
					INNER JOIN tipo_documento on tipo_documento.cod_tipo_documento = personal.cod_tipo_documento
					
					WHERE  horario.cod_servicio ='$cod_servicio'";
					
		$rs=consultar_fuente($sql);
		if (! empty($rs)) {
			return $rs[0]['servicio_nombre'];
		}
		return $rs; 			
	}

	function get_datos_servicio($nro_guia,$cod_tipo_comprobante,$fecha,$cod_servicio,$cod_horario)
	{
		$sql='';
			$sql="	SELECT servicio.cod_servicio,servicio.nombre as servicio_nombre,
					servicio.descripcion,loc_origen.nombre as origen,loc_destino.nombre as destino,
					ag_origen.nro_agencia as nro_agencia_origen,
					ag_origen.nombre as nombre_agencia_origen,loc_origen.cod_localidad as cod_localidad_origen,
					(loc_origen.nombre ||','|| prov_origen.nombre||','|| pais_origen.nombre) as localidad_origen, 
					ag_destino.nro_agencia as nro_agencia_destino,ag_destino.nombre as nombre_agencia_destino,
					loc_destino.cod_localidad as cod_localidad_destino,
					(loc_destino.nombre ||','|| prov_destino.nombre ||','|| pais_destino.nombre) as localidad_destino,
					horario.hora_salida,horario.hora_llegada,tipo_servicio.tipo,tipo_servicio.descripcion,
					coche.nro_coche,personal.nro_personal,tipo_documento.abreviatura || ': ' || nro_documento as documento,
					personal.apellido || ', ' || personal.nombre as personal
					FROM servicio 			
					INNER JOIN horario on horario.cod_servicio = servicio.cod_servicio
					INNER JOIN guia on (guia.cod_servicio,guia.cod_horario) = (horario.cod_servicio,horario.cod_horario)
					INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
					INNER JOIN agencia as ag_destino on ag_destino.nro_agencia = servicio.agencia_destino
					INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
					INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
					INNER JOIN provincia as prov_origen on prov_origen.cod_provincia = loc_origen.cod_provincia
					INNER JOIN provincia as prov_destino on prov_destino.cod_provincia = loc_destino.cod_provincia 
					INNER JOIN pais as pais_origen on pais_origen.cod_pais = prov_origen.cod_pais
					INNER JOIN pais as pais_destino on pais_destino.cod_pais = prov_destino.cod_pais
					INNER JOIN tipo_servicio on tipo_servicio.cod_tipo_servicio = servicio.cod_tipo_servicio
					INNER JOIN coche on coche.cod_coche = horario.cod_coche
					INNER JOIN servicio_personal on (servicio_personal.cod_servicio,servicio_personal.cod_horario) =
					(horario.cod_servicio,horario.cod_horario)
					INNER JOIN personal on personal.nro_personal = servicio_personal.nro_personal
					INNER JOIN tipo_documento on tipo_documento.cod_tipo_documento = personal.cod_tipo_documento
					
					WHERE guia.nro_guia ='$nro_guia' and guia.cod_tipo_comprobante ='$cod_tipo_comprobante' and guia.fecha ='$fecha'
					and guia.cod_servicio ='$cod_servicio' and guia.cod_horario='$cod_horario'";
					
		$rs=consultar_fuente($sql);
		if (! empty($rs)) {
			return $rs[0];
		}
		return $rs;
	}
	
	function get_servicio_horario($cod_servicio,$cod_horario)
	{
		$sql='';
			$sql="	SELECT servicio.nombre as servicio_nombre,
					horario.cod_servicio, horario.cod_horario,
					servicio.descripcion,loc_origen.nombre as origen,loc_destino.nombre as destino,
					ag_origen.nro_agencia as nro_agencia_origen,
					ag_origen.nombre as agencia_origen,loc_origen.cod_localidad as cod_loc_origen,
					(loc_origen.nombre ||','|| prov_origen.nombre||','|| pais_origen.nombre) as cod_localidad_origen, 
					ag_destino.nro_agencia as nro_agencia_destino,ag_destino.nombre as agencia_destino,
					loc_destino.cod_localidad as cod_loc_destino,
					(loc_destino.nombre ||','|| prov_destino.nombre ||','|| pais_destino.nombre) as cod_localidad_destino,
					horario.hora_salida as hora_servicio_salida,horario.hora_llegada as hora_servicio_llegada,tipo_servicio.tipo,
					tipo_servicio.descripcion, coche.nro_coche,personal.nro_personal,
					tipo_documento.abreviatura || ': ' || nro_documento as documento,
					personal.apellido || ', ' || personal.nombre as personal
					FROM servicio 			
					INNER JOIN horario on horario.cod_servicio = servicio.cod_servicio
					INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
					INNER JOIN agencia as ag_destino on ag_destino.nro_agencia = servicio.agencia_destino
					INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
					INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
					INNER JOIN provincia as prov_origen on prov_origen.cod_provincia = loc_origen.cod_provincia
					INNER JOIN provincia as prov_destino on prov_destino.cod_provincia = loc_destino.cod_provincia 
					INNER JOIN pais as pais_origen on pais_origen.cod_pais = prov_origen.cod_pais
					INNER JOIN pais as pais_destino on pais_destino.cod_pais = prov_destino.cod_pais
					INNER JOIN tipo_servicio on tipo_servicio.cod_tipo_servicio = servicio.cod_tipo_servicio
					INNER JOIN coche on coche.cod_coche = horario.cod_coche
					INNER JOIN servicio_personal on (servicio_personal.cod_servicio,servicio_personal.cod_horario) =
					(horario.cod_servicio,horario.cod_horario)
					INNER JOIN personal on personal.nro_personal = servicio_personal.nro_personal
					INNER JOIN tipo_documento on tipo_documento.cod_tipo_documento = personal.cod_tipo_documento
					
					WHERE  horario.cod_servicio ='$cod_servicio' and horario.cod_horario='$cod_horario'";
					
		$rs=consultar_fuente($sql);
		if (! empty($rs)) {
			return $rs[0];
		}
		return $rs;
	}
	
	function get_servicio_horario_popup($cod_servicio,$cod_horario)
	{
		$sql='';
			$sql="	SELECT servicio.nombre as servicio_nombre,
					horario.cod_servicio, horario.cod_horario,
					servicio.descripcion,loc_origen.nombre as origen,loc_destino.nombre as destino,
					ag_origen.nro_agencia as nro_agencia_origen,
					ag_origen.nombre as agencia_origen,loc_origen.cod_localidad as cod_loc_origen,
					(loc_origen.nombre ||','|| prov_origen.nombre||','|| pais_origen.nombre) as cod_localidad_origen, 
					ag_destino.nro_agencia as nro_agencia_destino,ag_destino.nombre as agencia_destino,
					loc_destino.cod_localidad as cod_loc_destino,
					(loc_destino.nombre ||','|| prov_destino.nombre ||','|| pais_destino.nombre) as cod_localidad_destino,
					horario.hora_salida as hora_servicio_salida,horario.hora_llegada as hora_servicio_llegada,tipo_servicio.tipo,
					tipo_servicio.descripcion, coche.nro_coche,personal.nro_personal,
					tipo_documento.abreviatura || ': ' || nro_documento as documento,
					personal.apellido || ', ' || personal.nombre as personal
					FROM servicio 			
					INNER JOIN horario on horario.cod_servicio = servicio.cod_servicio
					INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
					INNER JOIN agencia as ag_destino on ag_destino.nro_agencia = servicio.agencia_destino
					INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
					INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
					INNER JOIN provincia as prov_origen on prov_origen.cod_provincia = loc_origen.cod_provincia
					INNER JOIN provincia as prov_destino on prov_destino.cod_provincia = loc_destino.cod_provincia 
					INNER JOIN pais as pais_origen on pais_origen.cod_pais = prov_origen.cod_pais
					INNER JOIN pais as pais_destino on pais_destino.cod_pais = prov_destino.cod_pais
					INNER JOIN tipo_servicio on tipo_servicio.cod_tipo_servicio = servicio.cod_tipo_servicio
					INNER JOIN coche on coche.cod_coche = horario.cod_coche
					INNER JOIN servicio_personal on (servicio_personal.cod_servicio,servicio_personal.cod_horario) =
					(horario.cod_servicio,horario.cod_horario)
					INNER JOIN personal on personal.nro_personal = servicio_personal.nro_personal
					INNER JOIN tipo_documento on tipo_documento.cod_tipo_documento = personal.cod_tipo_documento
					
					WHERE  horario.cod_servicio ='$cod_servicio' and horario.cod_horario='$cod_horario'";
					
		$rs=consultar_fuente($sql);
		if (! empty($rs)) {
			return $rs[0];
		}
		return $rs;
	}
	
	function get_proximo_horario_servicio()
	{
		$sql='';
			$sql="	SELECT servicio.nombre as servicio_nombre,
					servicio.descripcion,ag_origen.nro_agencia as nro_agencia_origen,ag_origen.nombre as agencia_origen,
					loc_origen.cod_localidad as cod_loc_origen,
					(loc_origen.nombre ||','|| prov_origen.nombre||','|| pais_origen.nombre) as cod_localidad_origen, 
					ag_destino.nro_agencia as nro_agencia_destino,ag_destino.nombre as agencia_destino,
					loc_destino.cod_localidad as cod_loc_destino,
					(loc_destino.nombre ||','|| prov_destino.nombre ||','|| pais_destino.nombre) as cod_localidad_destino,
					horario.cod_servicio, horario.cod_horario,
					horario.hora_salida as hora_servicio_salida,horario.hora_llegada as hora_servicio_llegada,tipo_servicio.tipo,
					tipo_servicio.descripcion,coche.nro_coche,personal.nro_personal,
					tipo_documento.abreviatura || ': ' || nro_documento as documento,personal.apellido || ', ' || personal.nombre as personal
					FROM servicio 			
					INNER JOIN horario on horario.cod_servicio = servicio.cod_servicio
					INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
					INNER JOIN agencia as ag_destino on ag_destino.nro_agencia = servicio.agencia_destino
					INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
					INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
					INNER JOIN provincia as prov_origen on prov_origen.cod_provincia = loc_origen.cod_provincia
					INNER JOIN provincia as prov_destino on prov_destino.cod_provincia = loc_destino.cod_provincia 
					INNER JOIN pais as pais_origen on pais_origen.cod_pais = prov_origen.cod_pais
					INNER JOIN pais as pais_destino on pais_destino.cod_pais = prov_destino.cod_pais
					INNER JOIN tipo_servicio on tipo_servicio.cod_tipo_servicio = servicio.cod_tipo_servicio
					INNER JOIN coche on coche.cod_coche = horario.cod_coche
					INNER JOIN servicio_personal on (servicio_personal.cod_servicio,servicio_personal.cod_horario) =
					(horario.cod_servicio,horario.cod_horario)
					INNER JOIN personal on personal.nro_personal = servicio_personal.nro_personal
					INNER JOIN tipo_documento on tipo_documento.cod_tipo_documento = personal.cod_tipo_documento
					WHERE horario.hora_salida >= (Select LOCALTIME(0))
					ORDER BY horario.hora_salida asc
					limit 1 offset 0";
					
		$rs=consultar_fuente($sql);
		if (empty($rs)) {
			
			$sql='';
			$sql="	SELECT servicio.nombre as servicio_nombre,
					servicio.descripcion,ag_origen.nro_agencia as nro_agencia_origen,ag_origen.nombre as agencia_origen,
					loc_origen.cod_localidad as cod_loc_origen,
					(loc_origen.nombre ||','|| prov_origen.nombre||','|| pais_origen.nombre) as cod_localidad_origen, 
					ag_destino.nro_agencia as nro_agencia_destino,ag_destino.nombre as agencia_destino,
					loc_destino.cod_localidad as cod_loc_destino,
					(loc_destino.nombre ||','|| prov_destino.nombre ||','|| pais_destino.nombre) as cod_localidad_destino,
					horario.cod_servicio, horario.cod_horario,
					horario.hora_salida as hora_servicio_salida,horario.hora_llegada as hora_servicio_llegada,tipo_servicio.tipo,
					tipo_servicio.descripcion,coche.nro_coche,personal.nro_personal,
					tipo_documento.abreviatura || ': ' || nro_documento as documento,personal.apellido || ', ' || personal.nombre as personal
					FROM servicio 			
					INNER JOIN horario on horario.cod_servicio = servicio.cod_servicio
					INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
					INNER JOIN agencia as ag_destino on ag_destino.nro_agencia = servicio.agencia_destino
					INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
					INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
					INNER JOIN provincia as prov_origen on prov_origen.cod_provincia = loc_origen.cod_provincia
					INNER JOIN provincia as prov_destino on prov_destino.cod_provincia = loc_destino.cod_provincia 
					INNER JOIN pais as pais_origen on pais_origen.cod_pais = prov_origen.cod_pais
					INNER JOIN pais as pais_destino on pais_destino.cod_pais = prov_destino.cod_pais
					INNER JOIN tipo_servicio on tipo_servicio.cod_tipo_servicio = servicio.cod_tipo_servicio
					INNER JOIN coche on coche.cod_coche = horario.cod_coche
					INNER JOIN servicio_personal on (servicio_personal.cod_servicio,servicio_personal.cod_horario) =
					(horario.cod_servicio,horario.cod_horario)
					INNER JOIN personal on personal.nro_personal = servicio_personal.nro_personal
					INNER JOIN tipo_documento on tipo_documento.cod_tipo_documento = personal.cod_tipo_documento
					WHERE horario.hora_salida <= (Select LOCALTIME(0))
					ORDER BY horario.hora_salida asc
					limit 1 offset 0";
		}
		
		$rs=consultar_fuente($sql);
		if (! empty($rs)) {
			return $rs[0];
		}
		return $rs;			
	}
	
	function get_horarios_servicio($cod_servicio)
	{
		$sql='';
			$sql="	SELECT horario.cod_horario as cod_horario, horario.hora_salida as hora_salida
			
					FROM servicio 
					INNER JOIN tipo_servicio on tipo_servicio.cod_tipo_servicio = servicio.cod_tipo_servicio
					INNER JOIN horario on horario.cod_servicio = servicio.cod_servicio
					INNER JOIN coche on coche.cod_coche = horario.cod_coche
					INNER JOIN servicio_personal on (servicio_personal.cod_servicio,servicio_personal.cod_horario) =
					(horario.cod_servicio,horario.cod_horario)
					INNER JOIN personal on personal.nro_personal = servicio_personal.nro_personal
					INNER JOIN horario on horario.cod_servicio = servicio.cod_servicio
					INNER JOIN agencia_intermedia on agencia_intermedia.cod_horario = horario.cod_horario
					INNER JOIN tipo_documento on tipo_documento.cod_tipo_documento = personal.cod_tipo_documento
					INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
					INNER JOIN agencia as ag_destino on ag_destino.nro_agencia = servicio.agencia_destino
					INNER JOIN agencia as ag_intermedia on ag_intermedia.nro_agencia = agencia_intermedia.agencia_intermedia
					INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
					INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
					INNER JOIN localidad as loc_intermedia on loc_intermedia.cod_localidad = ag_intermedia.cod_localidad
					WHERE horario.cod_servicio  = '$cod_servicio' ORDER BY horario.hora_salida asc";
					
		$rs=consultar_fuente($sql);
		if (! empty($rs)) {
			return $rs;
		}
		return $rs; 			
	}
	
	function get_horario_inicial($nro_guia,$cod_tipo_comprobante,$fecha,$cod_servicio,$cod_horario)
	{
		$sql='';
			$sql="	SELECT servicio.cod_servicio,servicio.nombre as servicio_nombre,
					servicio.descripcion,loc_origen.nombre as origen,loc_destino.nombre as destino,
					ag_origen.nro_agencia as nro_agencia_origen,
					ag_origen.nombre as nombre_agencia_origen,loc_origen.cod_localidad as cod_localidad_origen,
					(loc_origen.nombre ||','|| prov_origen.nombre||','|| pais_origen.nombre) as localidad_origen, 
					ag_destino.nro_agencia as nro_agencia_destino,ag_destino.nombre as nombre_agencia_destino,
					loc_destino.cod_localidad as cod_localidad_destino,
					(loc_destino.nombre ||','|| prov_destino.nombre ||','|| pais_destino.nombre) as localidad_destino,
					guia.fecha,horario.hora_salida,tipo_servicio.tipo,tipo_servicio.descripcion,
					coche.nro_coche,personal.nro_personal,tipo_documento.abreviatura || ': ' || nro_documento as documento,
					personal.apellido || ', ' || personal.nombre as personal
					FROM servicio 			
					INNER JOIN horario on horario.cod_servicio = servicio.cod_servicio
					INNER JOIN guia on (guia.cod_servicio,guia.cod_horario) = (horario.cod_servicio,horario.cod_horario)
					INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
					INNER JOIN agencia as ag_destino on ag_destino.nro_agencia = servicio.agencia_destino
					INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
					INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
					INNER JOIN provincia as prov_origen on prov_origen.cod_provincia = loc_origen.cod_provincia
					INNER JOIN provincia as prov_destino on prov_destino.cod_provincia = loc_destino.cod_provincia 
					INNER JOIN pais as pais_origen on pais_origen.cod_pais = prov_origen.cod_pais
					INNER JOIN pais as pais_destino on pais_destino.cod_pais = prov_destino.cod_pais
					INNER JOIN tipo_servicio on tipo_servicio.cod_tipo_servicio = servicio.cod_tipo_servicio
					INNER JOIN coche on coche.cod_coche = horario.cod_coche
					INNER JOIN servicio_personal on (servicio_personal.cod_servicio,servicio_personal.cod_horario) =
					(horario.cod_servicio,horario.cod_horario)
					INNER JOIN personal on personal.nro_personal = servicio_personal.nro_personal
					INNER JOIN tipo_documento on tipo_documento.cod_tipo_documento = personal.cod_tipo_documento
					
					WHERE guia.nro_guia ='$nro_guia' and guia.cod_tipo_comprobante ='$cod_tipo_comprobante' and guia.fecha ='$fecha'
					and guia.cod_servicio ='$cod_servicio' and guia.cod_horario='$cod_horario'";
					
		$rs=consultar_fuente($sql);
		if (! empty($rs)) {
			return $rs[0];
		}
		return $rs;
	}
	
	function get_horarios($cod_servicio,$cod_horario)
	{
		$sql='';
			$sql="	SELECT horario.hora_salida as hora_salida
					FROM servicio 			
					INNER JOIN horario on horario.cod_servicio = servicio.cod_servicio
					INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
					INNER JOIN agencia as ag_destino on ag_destino.nro_agencia = servicio.agencia_destino
					INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
					INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
					INNER JOIN provincia as prov_origen on prov_origen.cod_provincia = loc_origen.cod_provincia
					INNER JOIN provincia as prov_destino on prov_destino.cod_provincia = loc_destino.cod_provincia 
					INNER JOIN pais as pais_origen on pais_origen.cod_pais = prov_origen.cod_pais
					INNER JOIN pais as pais_destino on pais_destino.cod_pais = prov_destino.cod_pais
					INNER JOIN tipo_servicio on tipo_servicio.cod_tipo_servicio = servicio.cod_tipo_servicio
					INNER JOIN coche on coche.cod_coche = horario.cod_coche
					INNER JOIN servicio_personal on (servicio_personal.cod_servicio,servicio_personal.cod_horario) =
					(horario.cod_servicio,horario.cod_horario)
					INNER JOIN personal on personal.nro_personal = servicio_personal.nro_personal
					INNER JOIN tipo_documento on tipo_documento.cod_tipo_documento = personal.cod_tipo_documento
					
					WHERE  horario.cod_servicio ='$cod_servicio' and horario.cod_horario <> '$cod_horario'
					order by horario.hora_salida";
					
		$rs = consultar_fuente($sql);
		
		if (! empty($rs)) {
			return $rs[0]['hora_salida'];
		}
		return $rs;	
	}

	function get_servicio_horarios($cod_servicio)
	{
		$sql='';
			$sql="	SELECT horario.cod_horario as cod_horario, horario.hora_salida as hora_salida
			
					FROM servicio 
					INNER JOIN tipo_servicio on tipo_servicio.cod_tipo_servicio = servicio.cod_tipo_servicio
					INNER JOIN servicio_personal on (servicio_personal.cod_servicio,servicio_personal.cod_horario) =
					(horario.cod_servicio,horario.cod_horario)
					INNER JOIN personal on personal.nro_personal = servicio_personal.nro_personal
					INNER JOIN horario on horario.cod_servicio = servicio.cod_servicio
					INNER JOIN coche on coche.cod_coche = horario.cod_coche
					INNER JOIN agencia_intermedia on agencia_intermedia.cod_horario = horario.cod_horario
					INNER JOIN tipo_documento on tipo_documento.cod_tipo_documento = personal.cod_tipo_documento
					INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
					INNER JOIN agencia as ag_destino on ag_destino.nro_agencia = servicio.agencia_destino
					INNER JOIN agencia as ag_intermedia on ag_intermedia.nro_agencia = agencia_intermedia.agencia_intermedia
					INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
					INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
					INNER JOIN localidad as loc_intermedia on loc_intermedia.cod_localidad = ag_intermedia.cod_localidad
					WHERE horario.cod_servicio  = '$cod_servicio' ORDER BY horario.hora_salida asc";
					
		$rs=consultar_fuente($sql);
		if (! empty($rs)) {
			return $rs;
		}
		return $rs; 			
	}

	function get_localidades_servicio($origen,$destino)
	{
		$sql='';
			$sql="	SELECT servicio.cod_servicio,servicio.nombre as servicio_nombre,
					(loc_origen.nombre ||','|| prov_origen.nombre||','|| pais_origen.nombre) as localidad_origen, 
					(loc_destino.nombre ||','|| prov_destino.nombre ||','|| pais_destino.nombre) as localidad_destino, 
					loc_origen.cod_localidad,loc_origen.nombre as origen,
					loc_destino.cod_localidad,loc_destino.nombre as destino,
					servicio.km as km_total,servicio.duracion_viaje as duracion_viaje_total,servicio.descripcion
			
					FROM servicio 
					
					INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
					INNER JOIN agencia as ag_destino on ag_destino.nro_agencia = servicio.agencia_destino
					INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
					INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
					INNER JOIN provincia as prov_origen on prov_origen.cod_provincia = loc_origen.cod_provincia
					INNER JOIN provincia as prov_destino on prov_destino.cod_provincia = loc_destino.cod_provincia 
					INNER JOIN pais as pais_origen on pais_origen.cod_pais = prov_origen.cod_pais
					INNER JOIN pais as pais_destino on pais_destino.cod_pais = prov_destino.cod_pais
					
					WHERE loc_origen.cod_localidad = '$origen' and loc_destino.cod_localidad = '$destino'";
					
		$rs=consultar_fuente($sql);
		if (! empty($rs)) {
			return $rs;
		}
		return $rs; 			
	}
	
	function get_servicio_agencias($origen,$destino)
	{
		$sql='';
			$sql="	SELECT servicio.cod_servicio as cod_servicio,servicio.nombre as servicio_nombre,
					(loc_origen.nombre ||','|| prov_origen.nombre||','|| pais_origen.nombre) as localidad_origen, 
					(loc_destino.nombre ||','|| prov_destino.nombre ||','|| pais_destino.nombre) as localidad_destino, 
					loc_origen.nombre as origen,loc_origen.cod_localidad as cod_localidad_origen,servicio.agencia_origen,
					loc_destino.nombre as destino,loc_destino.cod_localidad as cod_localidad_destino,servicio.agencia_destino,
					servicio.km as km_total,servicio.duracion_viaje as duracion_viaje_total,servicio.descripcion
			
					FROM servicio 
					
					INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
					INNER JOIN agencia as ag_destino on ag_destino.nro_agencia = servicio.agencia_destino
					INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
					INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
					INNER JOIN provincia as prov_origen on prov_origen.cod_provincia = loc_origen.cod_provincia
					INNER JOIN provincia as prov_destino on prov_destino.cod_provincia = loc_destino.cod_provincia 
					INNER JOIN pais as pais_origen on pais_origen.cod_pais = prov_origen.cod_pais
					INNER JOIN pais as pais_destino on pais_destino.cod_pais = prov_destino.cod_pais
					
					WHERE servicio.agencia_origen = '$origen' and servicio.agencia_destino = '$destino'";
					
		$rs=consultar_fuente($sql);
		if (! empty($rs)) {
			return $rs[0]['cod_servicio'];
		}
		return $rs; 			
	}
	
	function get_agencia_origen($cod_servicio){
		
		$sql='';
		$sql = "SELECT servicio.cod_servicio,servicio.nombre as servicio_nombre,ag_origen.nro_agencia as nro_agencia_origen,
				ag_origen.nombre as nombre_agencia_origen,loc_origen.cod_localidad as cod_localidad_origen,
				(loc_origen.nombre ||','|| prov_origen.nombre||','|| pais_origen.nombre) as localidad_origen, 
				ag_destino.nro_agencia as nro_agencia_destino,ag_destino.nombre as nombre_agencia_destino,
				loc_destino.cod_localidad as cod_localidad_destino,
				(loc_destino.nombre ||','|| prov_destino.nombre ||','|| pais_destino.nombre) as localidad_destino

				FROM servicio
				INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
				INNER JOIN agencia as ag_destino on ag_destino.nro_agencia =  servicio.agencia_destino
				INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
				INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
				INNER JOIN provincia as prov_origen on prov_origen.cod_provincia = loc_origen.cod_provincia
				INNER JOIN provincia as prov_destino on prov_destino.cod_provincia = loc_destino.cod_provincia 
				INNER JOIN pais as pais_origen on pais_origen.cod_pais = prov_origen.cod_pais
				INNER JOIN pais as pais_destino on pais_destino.cod_pais = prov_destino.cod_pais
				WHERE servicio.cod_servicio = '$cod_servicio'";
				
		$rs=consultar_fuente($sql);
		if (! empty($rs)) {
			return $rs;
		}
		return $rs;
	}
	
	function get_agencia_destino($cod_servicio){
		
		$sql='';
		$sql = "SELECT servicio.cod_servicio,servicio.nombre as servicio_nombre,ag_origen.nro_agencia as nro_agencia_origen,
				ag_origen.nombre as nombre_agencia_origen,loc_origen.cod_localidad as cod_localidad_origen,
				(loc_origen.nombre ||','|| prov_origen.nombre||','|| pais_origen.nombre) as localidad_origen, 
				ag_destino.nro_agencia as nro_agencia_destino,ag_destino.nombre as nombre_agencia_destino,
				loc_destino.cod_localidad as cod_localidad_destino,
				(loc_destino.nombre ||','|| prov_destino.nombre ||','|| pais_destino.nombre) as localidad_destino

				FROM servicio
				INNER JOIN agencia as ag_origen on ag_origen.nro_agencia = servicio.agencia_origen
				INNER JOIN agencia as ag_destino on ag_destino.nro_agencia =  servicio.agencia_destino
				INNER JOIN localidad as loc_origen on loc_origen.cod_localidad = ag_origen.cod_localidad
				INNER JOIN localidad as loc_destino on loc_destino.cod_localidad = ag_destino.cod_localidad
				INNER JOIN provincia as prov_origen on prov_origen.cod_provincia = loc_origen.cod_provincia
				INNER JOIN provincia as prov_destino on prov_destino.cod_provincia = loc_destino.cod_provincia 
				INNER JOIN pais as pais_origen on pais_origen.cod_pais = prov_origen.cod_pais
				INNER JOIN pais as pais_destino on pais_destino.cod_pais = prov_destino.cod_pais
				WHERE servicio.cod_servicio ='$cod_servicio'";
				
		$rs=consultar_fuente($sql);
		if (! empty($rs)) {
			return $rs;
		}
		return $rs; 
	}
	
	
}
?>
